Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

firmware: fix issue #382 #395

Conversation

whitequark
Copy link
Member

The issue #382 (failure of the device to enumerate when plugged into a Windows machine for the first time) was caused by the lack of handling of a Windows-specific descriptor. Respond to a request for this descriptor.

Fixes #382.

The issue GlasgowEmbedded#382 (failure of the device to enumerate when plugged into
a Windows machine for the first time) was caused by the lack of handling
of a Windows-specific descriptor. Respond to a request for this
descriptor.

Co-authored-by: Maya <maya@maybemaya.me>
Co-authored-by: Charlotte <charlotte@lottia.net>
@whitequark whitequark force-pushed the fix-issue-382-in-a-way-i-eventually-decided-i-like branch from aa50e80 to 757128f Compare September 20, 2023 15:38
@whitequark whitequark added this pull request to the merge queue Sep 20, 2023
@whitequark
Copy link
Member Author

whitequark commented Sep 20, 2023

This is a small diff but we had an absolutely mindwarping time debugging this issue with Maya and Charlotte. One of the things we found out is that somehow, the firmware times out responding to a Get Status request (handled unconditionally in libfx2 by responding with two constant bytes), but only on Maya's Windows laptop; if I take the same series of requests, issued from my Linux laptop, and issue them byte for byte with roughly the same timings, they succeed each time.

Completely incomprehensible failure. We eventually gave up and drilled down the issue to this root cause, which actually doesn't quite makes this 100% successful, but makes it so that using the ETW USB tracing on Windows eliminates the low-probability failure entirely, which is the point where you just give up on debugging and ship the goddamn thing already.

Merged via the queue into GlasgowEmbedded:main with commit dbe6f0e Sep 20, 2023
8 of 9 checks passed
@whitequark whitequark deleted the fix-issue-382-in-a-way-i-eventually-decided-i-like branch September 20, 2023 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Device fails to enumerate when plugged in for the first time on Windows
1 participant